1. Field of the Invention
The present invention is related to storage systems management software, and more particularly to a storage manager for providing virtual disks to virtual machine images.
2. Description of Related Art
Virtualized computing systems, also known as cloud computing systems, provide large-scale computing functionality in applications such as management of large databases and scientific computing, and large-quantity server functionality in applications such as web page servers and other Internet traffic handling. A virtualized computer system typically provides a platform for executing instances of different operating systems, and hosting multiple applications within each operating systems instance. The computer hardware employed is also virtualized in the sense that multiple distributed processors and local memories form a large-scale multiprocessing system with a distributed system memory.
Storage within present-day virtualized computing systems is typically manually configured for each particular virtual machine, by a system operator using management tools that configure the storage that will be provided to the particular virtual machine. The storage is typically tied to a particular physical disk, although the same locations within the physical disk may be shared when the particular virtual machine is off-line by storing a virtual machine image including the virtual machine's disk-based storage at another off-line location. Beyond the virtual storage devices within the virtual machine image, storage within a virtualized computing system also stores and retrieves the image itself, when the virtual machines are taken off-line and then brought on-line. In a typical storage assignment for a virtual machine image, two disk images are used: one for the virtual machine image, i.e., the disk used by the operating system, and another disk for providing the storage used by applications running within the virtual machine. Finally, not only are virtual machine images managed to and from storage, and virtual storage devices allocated at virtual image startup, but at run-time, resources are dynamically managed in order to provide resources needed by various applications, as well as the operating system/virtual machine image.
However, management of virtual machine images, virtual disks provided to virtual machines, and run-time management of storage resources are performed separately according to different configurations specified by the system administrator(s). Further, some applications, such as database servers, are written to access raw storage devices, and therefore use storage resource that are typically understood to correspond to the virtual machine image and not virtual disks provided by the virtual machine to applications.
Therefore, it would be desirable to provide a method and program within a computer system that provide virtual disk storage to virtual computer system instances, without requiring excessive system administrator intervention and that unify startup, shutdown and run-time storage management in a virtualized computer system.